﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Orchard.ContentManagement;
using Orchard;
using Orchard.Localization;

namespace RaisingStudio.Razor.Services
{
    public interface IRazorModel
    {
        T As<T>() where T : Orchard.ContentManagement.IContent;
        dynamic Content { get; }
        Orchard.ContentManagement.ContentItem ContentItem { get; }
        Orchard.ContentManagement.IContentManager ContentManager { get; }
        dynamic Context { get; }
        Orchard.Settings.ISite CurrentSite { get; }
        Orchard.Security.IUser CurrentUser { get; }
        System.Web.HttpContextBase HttpContext { get; }
        T Resolve<T>();
        Orchard.IOrchardServices Services { get; }
        Orchard.Localization.Localizer T { get; }
        Orchard.WorkContext WorkContext { get; }
    }
}